Digital systems typically transmit data as symbols having discrete levels of amplitude and/or phase. To the extent that a symbol is received at a level that differs from one of the allowed discrete levels, a measure of communication channel error can be detected. Some existing systems use an equalizer in the receiver that is responsive to the detected error to mitigate the signal corruption introduced by the communications channel. An equalizer is typically a filter that has the inverse characteristics of the communication channel. If the transmission characteristics of the communication channel are known or measured, then the equalization filter parameters can be set directly. After adjustment of the equalization filter parameters, the received signal is passed through the equalizer, which compensates for the non-ideal communication channel by introducing compensating “distortions” into the received signal, which tend to cancel the distortions introduced by the communication channel.
Equalization in existing communication systems is usually done in one of three ways. In a first type of system, the transmitter includes a non-adaptive equalizer. In a second type of system, the receiver includes a non-adaptive equalizer. In a third type of system, the receiver includes an adaptive equalizer.
The most commonly used method in high-speed transmission systems is to use a non-adaptive equalizer. Thus, optimizing performance requires manual tuning with detailed a priori knowledge of the channel. Although the non-adaptive equalizer can be set for a generic channel, such an approach often leads to sub-optimal performance, since all channels do not have exactly the same characteristics as the generic channel. In addition, for non-stationary channels in which the channel characteristics vary over time (such as variations due to temperature, humidity, and power supply voltage), a non-adaptive equalizer will result in sub-optimal performance even if the equalizer was initially tuned optimally.
In many situations, such as in broadcasting, each receiver is in a unique location with respect to the transmitter. Accordingly, the characteristics of the communication channel are not known in advance, and may even change with time. In those situations, where the communication channel is not characterized in advance, or changes with time, an adaptive equalizer in the receiver is typically used. Adaptive equalizers have variable parameters that are calculated in the receiver. A problem to be solved in an adaptive equalizer is how to adjust the equalizer filter parameters in order to restore signal quality to an acceptable performance level.
In some adaptive equalization systems, the parameters of the receiver equalization filter are set using a predetermined pilot signal (a training sequence), which is periodically sent from the transmitter to the receiver. The received training sequence is compared with a known training sequence to derive the parameters of the equalization filter. After several iterations of parameter settings derived from successive training sequences, the receiver equalization filter converges to a setting that tends to compensate for the distortion characteristics of the communications channel.
In blind equalization systems, the parameters of the receiver equalizer filter are typically derived from the received signal itself without using a training sequence. In some prior art systems, the equalizer parameters are adjusted using a Least Mean Squares (LMS) algorithm, in which the training symbols are replaced with hard decisions, or best estimates of the original input symbols. A similar algorithm, referred to as a Recursive Least Squares (RLS) algorithm, has also been used for adaptive filter equalization in receivers.
Some other existing systems use another algorithm, called a Constant Modulus Algorithm (CMA), in combination with an LMS algorithm. The CMA algorithm is usually used first to calculate equalizer filter parameters, which are regarded as an initial estimate. Thereafter, the equalizer filter parameters (as calculated by the CMA algorithm) are typically used in an acquisition mode to find the initial equalizer filter parameters to start the LMS algorithm.
Existing adaptive filter algorithms usually involve performing a gradient search based on a mean square error as the performance metric. The CMA algorithm and the LMS algorithm are typically implemented with a gradient descent strategy. However, it can be a complex task to compute derivatives or to compute a gradient, and may even lead to a system of equations that can not be solved. Further, the number of quality or performance metrics that can be used to drive such algorithms is limited due to the need to compute gradients.